package com.zhou.dao;

import com.zhou.entity.*;

import java.util.List;

/**
 *管理所有学校发布的消息的DAO
 * @author 周贵有
 */
public interface SchoolMessageDAO {
    /**
     * 添加（校方-教师）消息
     * @param schoolTeacherMessage
     */
    void addSchoolTeacherMessage(SchoolTeacherMessage schoolTeacherMessage);

    /**
     * 添加（校方-学生）消息
     * @param schoolStudentMessage
     */
    void addSchoolStudentMessage(SchoolStudentMessage schoolStudentMessage);

    /**
     * 添加（校方-教师）消息的关系
     * @param schoolPublishA
     */
    void addSchoolPublishA(SchoolPublishA schoolPublishA);

    /**
     * 添加（校方-学生）消息的关系信息
     * @param schoolPublishB
     */
    void addSchoolPublishB(SchoolPublishB schoolPublishB);

    /**
     * 根据账号=发布人编号，查询（校方-教师）消息表里的任务
     */
    List<MessageList> findSchoolTeacherTask(Integer account);

    /**
     * 根据账号=发布人编号，查询（校方-学生）消息表里的任务
     */
    List<MessageList> findSchoolStudentTask(Integer account);

    /**
     * 根据消息编号查询（校方-教师）消息表，获取消息详情
     * @param MessageID
     * @return
     */
    String findSchoolTeacherMessageDetails(Integer MessageID);

    /**
     * 根据消息编号查询（校方-学生）消息表，获取消息详情
     * @param MessageID
     * @return
     */
    String findSchoolStudentMessageDetails(Integer MessageID);


    /**
     * 根据消息编号查询（校方-教师）消息表，删除对应信息
     * @param MessageID
     */
    void deleteSchoolTeacherMessage(Integer MessageID);

    /**
     * 根据消息编号查询（校方-学生）消息表，删除对应信息
     * @param MessageID
     */
    void deleteSchoolStudentMessage(Integer MessageID);

    /**
     * 删除（校方-教师）消息的关系
     * @param MessageID
     */
    void deleteSchoolPublishA(Integer MessageID);

    /**
     * 删除（校方-学生）消息的关系信息
     * @param MessageID
     */
    void deleteSchoolPublishB(Integer MessageID);

    /**
     * 根据账号=发布人编号，查询（校方-教师）消息表里的通知
     * @param account
     * @return
     */
    List<MessageList> findSchoolTeacherNotice(Integer account);

    /**
     * 根据账号=发布人编号，查询（校方-学生）消息表里的通知
     * @param account
     * @return
     */
    List<MessageList> findSchoolStudentNotice(Integer account);

}
